/*
 * @(#) UserInfoDao.java 1.0  2011-8-5 
 *
 * (c) Copyright 2011 smshen S3H3L3
 *
 * FILENAME    : UserInfoDao.java
 * PACKAGE     : com.sm.dao
 * CREATE DATE : 2011-8-5
 * AUTHOR      : smshen
 */

package com.sm.dao;

import javax.servlet.http.HttpServletRequest;

import com.sm.model.UserInfo;

/*******************************************************************************
 *  #(c) smshen S3H3L3 
 *
 *  功能说明: 用户管理DAO层
  
 *  2011-8-5 下午1:37:21 smshen 创建文件
 * 
 *  修改说明: 创建文件

 *  2011-8-5 下午1:37:21 smshen 修改文件
 * 
 ******************************************************************************/

public interface UserInfoDao {
	
	/**
	 * 
	 * 功能 :根据ID获取用户
	
	 * 开发：smshen 2011-8-12
	
	 * @param id 用户id
	 * @return UserInfo
	 */
	UserInfo getUserInfoById(String id);
	
	/**
	 * 
	 * 功能 :登录验证
	
	 * 开发：smshen 2011-8-12
	
	 * @param userName 用户名
	 * @param password 密码
	 * @return UserInfo
	 */
	UserInfo findUserInfoByNameAndPasswd(String userName, String password);

	/**
	 * 
	 * 功能 :检查用户名是否存在
	
	 * 开发：smshen 2011-8-12
	
	 * @param userName 用户名
	 * @return UserInfo
	 */
	UserInfo checkUserIsExist(String userName);

	/**
	 * 
	 * 功能 :添加用户
	
	 * 开发：smshen 2011-8-12
	
	 * @param userInfo 用户实体
	 */
	void addUser(UserInfo userInfo);

	/**
	 * 
	 * 功能 :获取用户列表
	
	 * 开发：smshen 2011-8-12
	
	 * @param request HttpServletRequest
	 * @return List<UserInfo>
	 */
	String getAllUserList(HttpServletRequest request);

	/**
	 * 
	 * 功能 :删除用户
	
	 * 开发：smshen 2011-8-12
	
	 * @param id 用户ID
	 */
	void delUser(String id);

	/**
	 * 
	 * 功能 :更新用户信息
	
	 * 开发：smshen 2011-8-12
	
	 * @param userInfo 用户实体类
	 */
	void updateAndSaveUser(UserInfo userInfo);
}


